<template>
  <div>
    <el-dialog
      class="el-dialog-fullScreen"
      fullscreen
      style="height: 100%"
      title="审核学生成果"
      :visible.sync="reviewAwardData.reviewDialogVisible"
    >
      <el-dialog
        title="提示"
        :visible.sync="reviewAwardData.passDialogVisible"
        width="30%"
        center
        append-to-body
      >
        <div style="text-align:center">
          <span>是否确认审核通过</span>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button type="primary" @click="passAward">确 定</el-button>
          <el-button @click="reviewAwardData.passDialogVisible = false">取 消</el-button>
        </span>
      </el-dialog>
      <el-dialog
        title="提示"
        :visible.sync="reviewAwardData.awaitDialogVisible"
        width="30%"
        center
        append-to-body
      >
        <div style="text-align:center">
          <span>是否确认该条成果待定？</span>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button type="primary" @click="awaitAward">确 定</el-button>
          <el-button @click="reviewAwardData.awaitDialogVisible = false">取 消</el-button>
        </span>
      </el-dialog>
      <el-dialog
        title="提示"
        :visible.sync="reviewAwardData.reviseDialogVisible"
        width="30%"
        center
        append-to-body
      >
        <div style="text-align:center">
          <span>请输入驳回成果的原因</span>
        </div>
        <el-form :model="reviewAwardData.form">
          <el-form-item label="驳回原因" :label-width="reviewAwardData.formLabelWidth">
            <el-select v-model="reviewAwardData.form.reason">
              <el-option
                v-for="item in reviewAwardData.rejectInfo"
                :key="item.value"
                :label="item.text"
                :value="item.value"
              />
            </el-select>
          </el-form-item>
        </el-form>
        <span slot="footer" class="dialog-footer">
          <el-button type="primary" @click="reviseAward">确 定</el-button>
          <el-button @click="reviewAwardData.reviseDialogVisible = false">取 消</el-button>
        </span>
      </el-dialog>
      <el-dialog
        title="提示"
        :visible.sync="reviewAwardData.rejectDialogVisible"
        width="30%"
        center
        append-to-body
      >
        <div style="text-align:center">
          <span>请输入拒绝成果的原因</span>
        </div>
        <el-form :model="reviewAwardData.form">
          <el-form-item label="拒绝原因" :label-width="reviewAwardData.formLabelWidth">
            <el-select v-model="reviewAwardData.form.reason">
              <el-option
                v-for="item in reviewAwardData.rejectInfo"
                :key="item.value"
                :label="item.text"
                :value="item.value"
              />
            </el-select>
          </el-form-item>
        </el-form>
        <span slot="footer" class="dialog-footer">
          <el-button type="primary" @click="rejectAward">确 定</el-button>
          <el-button @click="reviewAwardData.rejectDialogVisible = false">取 消</el-button>
        </span>
      </el-dialog>
      <div
        class="app-container"
        style="margin: 10px; height: 30%; border-style: none none solid none; border-color: #b3d8ff"
      >
        <el-row :gutter="20">
          <el-col :span="8">
            <div class="block" style="text-align: center">
              <el-avatar :size="120" :src="reviewAwardData.UserUrl" />
            </div>
          </el-col>
          <el-col :span="16" style="height: 100px">
            <el-row style="height: 30px">
              {{ reviewAwardData.stuInfo1 }}
            </el-row>
            <el-row style="height: 30px">
              {{ reviewAwardData.stuInfo2 }}
            </el-row>
            <el-row style="height: 40px">
              {{ reviewAwardData.stuInfo3 }}
            </el-row>
            <el-row style="height: 20px">
              <el-button size="small" type="primary" @click="jumpDetail">
                查看详细信息
              </el-button>
            </el-row>
          </el-col>
        </el-row>
      </div>
      <div class="app-container" style="margin: 30px; height: 50%">
        <el-row :gutter="10">
          <el-col :span="8" style="border-style: none solid none none ; border-color: #b3d8ff">
            <el-table
              v-loading="reviewAwardData.loading"
              class="prize-info"
              :data="reviewAwardData.tableData"
              style="width: 90%; border-radius: 20px"
              height="500"
            >
              <el-table-column
                prop="type"
              />
              <el-table-column
                prop="info"
              />
            </el-table>
          </el-col>
          <el-col :span="16">
            <el-scrollbar style="height:100%">
              <div style="width:100%; height:500px;">
                <img v-if="reviewAwardData.imageVisible" style="width: 100%" :src="reviewAwardData.imageSrc">
                <pdf v-if="reviewAwardData.pdfVisible" style="width: 100%" :src="reviewAwardData.pdfSrc" />
              </div>
            </el-scrollbar>
          </el-col>
        </el-row>
      </div>
      <div style="margin: auto; width:auto; text-align: center;">
        <el-button
          type="primary"
          :disabled="reviewAwardData.btn1"
          icon="el-icon-arrow-left"
          style="margin-right: 60px;"
          plain
          @click="jumpPre"
        >上一条
        </el-button>
        <el-button type="primary" @click="reviewAwardData.passDialogVisible = true">通 过</el-button>
        <el-button type="primary" @click="reviewAwardData.awaitDialogVisible = true">待 定</el-button>
        <el-button type="primary" @click="reviewAwardData.reviseDialogVisible = true">驳回修改</el-button>
        <el-button type="primary" style="margin-right: 60px;" @click="reviewAwardData.rejectDialogVisible = true">拒 绝
        </el-button>
        <el-button type="primary" :disabled="reviewAwardData.btn2" plain @click="jumpNext">下一条<i
          class="el-icon-arrow-right el-icon--right"
        /></el-button>
      </div>
      <div slot="footer" class="dialog-footer" style="width:auto; text-align: center;">
        <el-button type="primary" @click="returnReview">返 回</el-button>
      </div>
    </el-dialog>
    <el-dialog
      class="el-dialog-fullScreen"
      fullscreen
      title="已审核成果"
      :visible.sync="reviewAwardData.reviewedDialogVisible"
    >
      <el-dialog
        title="提示"
        :visible.sync="reviewAwardData.passDialogVisible"
        width="30%"
        center
        append-to-body
      >
        <div style="text-align:center">
          <span>是否确认审核通过</span>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button type="primary" @click="passAward">确 定</el-button>
          <el-button @click="reviewAwardData.passDialogVisible = false">取 消</el-button>
        </span>
      </el-dialog>
      <el-dialog
        title="提示"
        :visible.sync="reviewAwardData.awaitDialogVisible"
        width="30%"
        center
        append-to-body
      >
        <div style="text-align:center">
          <span>是否确认该条成果待定？</span>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button type="primary" @click="awaitAward">确 定</el-button>
          <el-button @click="reviewAwardData.awaitDialogVisible = false">取 消</el-button>
        </span>
      </el-dialog>
      <el-dialog
        title="提示"
        :visible.sync="reviewAwardData.reviseDialogVisible"
        width="30%"
        center
        append-to-body
      >
        <div style="text-align:center">
          <span>请输入驳回成果的原因</span>
        </div>
        <el-form :model="reviewAwardData.form">
          <el-form-item label="驳回原因" :label-width="reviewAwardData.formLabelWidth">
            <el-select v-model="reviewAwardData.form.reason">
              <el-option
                v-for="item in reviewAwardData.rejectInfo"
                :key="item.value"
                :label="item.text"
                :value="item.value"
              />
            </el-select>
          </el-form-item>
        </el-form>
        <span slot="footer" class="dialog-footer">
          <el-button type="primary" @click="reviseAward">确 定</el-button>
          <el-button @click="reviewAwardData.reviseDialogVisible = false">取 消</el-button>
        </span>
      </el-dialog>
      <el-dialog
        title="提示"
        :visible.sync="reviewAwardData.rejectDialogVisible"
        width="30%"
        center
        append-to-body
      >
        <div style="text-align:center">
          <span>请输入拒绝成果的原因</span>
        </div>
        <el-form :model="reviewAwardData.form">
          <el-form-item label="拒绝原因" :label-width="reviewAwardData.formLabelWidth">
            <el-select v-model="reviewAwardData.form.reason">
              <el-option
                v-for="item in reviewAwardData.rejectInfo"
                :key="item.value"
                :label="item.text"
                :value="item.value"
              />
            </el-select>
          </el-form-item>
        </el-form>
        <span slot="footer" class="dialog-footer">
          <el-button type="primary" @click="rejectAward">确 定</el-button>
          <el-button @click="reviewAwardData.rejectDialogVisible = false">取 消</el-button>
        </span>
      </el-dialog>
      <div
        class="app-container"
        style="margin: 10px; height: 30%; border-style: none none solid none; border-color: #b3d8ff"
      >
        <el-row :gutter="20">
          <el-col :span="8" style="border-style: none solid none none ; border-color: #b3d8ff">
            <div class="block" style="text-align: center">
              <el-avatar :size="120" :src="reviewAwardData.UserUrl" />
            </div>
          </el-col>
          <el-col :span="16" style="height: 100px">
            <el-row style="height: 30px">
              {{ reviewAwardData.stuInfo1 }}
            </el-row>
            <el-row style="height: 30px">
              {{ reviewAwardData.stuInfo2 }}
            </el-row>
            <el-row style="height: 40px">
              {{ reviewAwardData.stuInfo3 }}
            </el-row>
            <el-row style="height: 20px">
              <el-button size="small" type="primary" @click="jumpDetail">
                查看详细信息
              </el-button>
            </el-row>
          </el-col>
        </el-row>
      </div>
      <div class="app-container" style="margin: 30px; height: 50%">
        <el-row :gutter="10">
          <el-col :span="8">
            <el-table
              v-loading="reviewAwardData.loading"
              class="prize-info"
              :data="reviewAwardData.tableData"
              style="width: 90%; border-radius: 20px"
              height="500"
            >
              <el-table-column
                prop="type"
              />
              <el-table-column
                prop="info"
              />
            </el-table>
          </el-col>
          <el-col :span="16">
            <el-scrollbar style="height:100%">
              <div style="width:100%; height:500px;">
                <img v-if="reviewAwardData.imageVisible" style="width: 100%" :src="reviewAwardData.imageSrc">
                <pdf v-if="reviewAwardData.pdfVisible" style="width: 100%" :src="reviewAwardData.pdfSrc" />
              </div>
            </el-scrollbar>
          </el-col>
        </el-row>
      </div>
      <div style="margin: auto; width:auto; text-align: center;">
        <el-button
          type="primary"
          plain
          :disabled="reviewAwardData.btn1"
          style="margin-right: 60px;"
          icon="el-icon-arrow-left"
          @click="jumpPre"
        >上一条
        </el-button>
        <el-button type="primary" plain :disabled="reviewAwardData.btn2" @click="jumpNext">下一条<i
          class="el-icon-arrow-right el-icon--right"
        /></el-button>
      </div>
      <div slot="footer" class="dialog-footer" style="width:auto; text-align: center;">
        <el-button type="primary" @click="returnReview">返 回</el-button>
      </div>
    </el-dialog>
    <el-dialog :visible.sync="detailStudentDialog.detailStudentDialogVisible" :show-close="false">
      <template slot="title">
        <div>
          <el-row>
            <el-col :span="20" style="text-align: left">
              <span style="color: #000; font-size: 40px; font-weight: 500;">
                详细学生信息
              </span>
            </el-col>
            <el-col :span="4" style="text-align: right">
              <el-button
                icon="el-icon-close"
                type="danger"
                circle
                @click="detailStudentDialog.detailStudentDialogVisible = false"
              />
            </el-col>
          </el-row>
        </div>
      </template>
      <div style="margin: 30px">
        <el-table
          v-loading="detailStudentDialog.loading"
          class="prize-info"
          :data="detailStudentDialog.tableData"
          style="width: 100%; border-radius: 20px"
        >
          <el-table-column
            prop="type"
            width="300"
          />
          <el-table-column
            prop="info"
          />
        </el-table>
      </div>
      <div style="margin:0 auto; width:400px;text-align:center;">
        <el-button type="primary" @click="detailStudentDialog.detailStudentDialogVisible = false">返 回</el-button>
      </div>
    </el-dialog>
    <div class="app-container">
      <div class="filter-container">
        <el-date-picker
          v-model="queryParams.dateTime"
          align="right"
          type="daterange"
          start-placeholder="开始日期"
          end-placeholder="结束日期"
          class="filter-item search-item"
          format="yyyy-MM-dd"
          value-format="yyyyMMdd"
          style="width : 350px"
        />
      </div>
      <div class="filter-container">
        <el-autocomplete
          v-model="queryParams.awardAscept"
          :fetch-suggestions="querySearchAsync1"
          placeholder="按照评价方面查找"
          @select="handleSelect"
        />
        <el-autocomplete
          v-model="queryParams.awardItem"
          :fetch-suggestions="querySearchAsync2"
          placeholder="按照评分单项查找"
          @select="handleSelect"
        />
        <el-autocomplete
          v-model="queryParams.awardLevel"
          :fetch-suggestions="querySearchAsync3"
          placeholder="按照评分小项查找"
          @select="handleSelect"
        />
        <el-autocomplete
          v-model="queryParams.Type"
          :fetch-suggestions="querySearchAsync"
          placeholder="按审批情况查找"
          @select="handleSelect"
        />
        <el-autocomplete
          v-model="queryParams.sbiState"
          :fetch-suggestions="querySearchAsync4"
          placeholder="是否激活"
          @select="handleSelect"
        />
        <el-autocomplete
          v-model="queryParams.sbiIfStuUpdateBasicInfo"
          :fetch-suggestions="querySearchAsync5"
          placeholder="学生是否维护个人信息"
          @select="handleSelect"
        />
      </div>
      <div class="filter-container">
        <el-input v-model="queryParams.sbi_number" class="filter-item search-item" placeholder="按照学号查找" />
        <el-input v-model="queryParams.sbi_name" class="filter-item search-item" placeholder="按照姓名查找" />
        <el-input v-model="queryParams.sbi_academy" class="filter-item search-item" placeholder="按照学院查找" />
        <el-input v-model="queryParams.sbi_department" class="filter-item search-item" placeholder="按照系查找" />
        <el-input v-model="queryParams.sbi_major" class="filter-item search-item" placeholder="按照专业查找" />
        <el-input v-model="queryParams.sbi_class" class="filter-item search-item" placeholder="按照班级查找" />
        <el-input v-model="queryParams.sbi_youth_league_branch" class="filter-item search-item" placeholder="按照团支部查找" />
        <el-input v-model="queryParams.sbi_party_branch" class="filter-item search-item" placeholder="按照党支部查找" />
        <el-input v-model="queryParams.sbi_teacher" class="filter-item search-item" placeholder="按照导师查找" />
        <el-input v-model="queryParams.sbi_class_teacher" class="filter-item search-item" placeholder="按照班主任查找" />
        <el-input v-model="queryParams.sbi_instructor" class="filter-item search-item" placeholder="按照辅导员查找" />
        <el-input v-model="queryParams.sbi_organizer" class="filter-item search-item" placeholder="按照组织员查找" />
        <el-input v-model="queryParams.sbi_dean" class="filter-item search-item" placeholder="按照教务员查找" />
        <el-input v-model="queryParams.sbi_group" class="filter-item search-item" placeholder="按照组别查找" />
        <el-button class="filter-item" type="primary" @click="search">
          {{ $t('table.search') }}
        </el-button>
        <el-button class="filter-item" type="success" @click="reset">
          {{ $t('table.reset') }}
        </el-button>
      </div>
    </div>
    <div class="app-container">
      <el-table
        ref="table"
        :key="tableKey"
        v-loading="loading"
        :data="list"
        height="500"
        border
        fit
        style="width: 100%;"
      >
        <el-table-column
          align="center"
          type="index"
          label="序号"
          width="60"
          height="45"
          style="padding-bottom: 20px;"
        />
        //学号
        <el-table-column
          prop="stu_id"
          label="学生学号"
          align="center"
          sortable
          width="120"
        />
        //姓名
        <el-table-column
          prop="stu_name"
          align="center"
          label="学生姓名"
          width="90"
        />

        //性别 sbiSex
        <el-table-column
          prop="sbiSex"
          align="center"
          label="性别"
          width="80"
        />

        //学院 sbiAcademy
        <el-table-column
          prop="sbiAcademy"
          align="center"
          label="学院"
          width="150"
        />

        //系 sbiDepartment
        <el-table-column
          prop="sbiDepartment"
          align="center"
          label="系"
          width="150"
        />

        //专业 sbiMajor
        <el-table-column
          prop="sbiMajor"
          align="center"
          label="专业"
          width="100"
        />

        //班级 sbiClass
        <el-table-column
          prop="sbiClass"
          align="center"
          label="班级"
          width="150"
        />

        //团支部 sbiYouthLeagueBranch
        <el-table-column
          prop="sbiYouthLeagueBranch"
          align="center"
          label="团支部"
          width="200"
        />

        //党支部 sbiPartyBranch
        <el-table-column
          prop="sbiPartyBranch"
          align="center"
          label="党支部"
          width="150"
        />

        <!--      //培养层次 sbiTrainingLevel-->
        <!--      <el-table-column-->
        <!--        prop="sbiTrainingLevel"-->
        <!--        align="center"-->
        <!--        label="培养层次"-->
        <!--        width="220"-->
        <!--      />-->

        //组别 sbiGroup
        <el-table-column
          prop="sbiGroup"
          align="center"
          label="组别"
          width="200"
        />

        //导师 sbiTeacher
        <el-table-column
          prop="sbiTeacher"
          align="center"
          label="导师"
          width="130"
        />

        //班主任 sbiClassTeacher
        <el-table-column
          prop="sbiClassTeacher"
          align="center"
          label="班主任"
          width="130"
        />

        //辅导员 sbiInstructor
        <el-table-column
          prop="sbiInstructor"
          align="center"
          label="辅导员"
          width="130"
        />

        //组织员 sbiOrganizer
        <el-table-column
          prop="sbiOrganizer"
          align="center"
          label="组织员"
          width="130"
        />

        //教务员 sbiDean
        <el-table-column
          prop="sbiDean"
          align="center"
          label="教务员"
          width="130"
        />
        //成果类型
        <!--
        <el-table-column
          prop="type"
          label="成果类型"
          width="100"
        />
        -->
        //成果名称
        <!--
        <el-table-column
          prop="name"
          label="成果名称"
          width="120"
        />
        -->

        //成果是否正向
        <el-table-column
          align="center"
          prop="ifPositive"
          label="加分/减分项？"
          width="90"
        />

        //引用格式
        <el-table-column
          align="center"
          prop="message"
          label="成果类型"
          width="220"
          :formatter="formatter"
        >
          <template slot-scope="scope">
            <span>{{ scope.row.message }}</span>
          </template>
        </el-table-column>

        //成果名称
        <el-table-column
          prop="name"
          align="center"
          label="成果名称"
          width="120"
        />

        //创建时间
        <el-table-column
          prop="date"
          label="申请时间"
          align="center"
          sortable
          width="120"
          column-key="date"
        />

        //成果状态
        <el-table-column
          prop="tag1"
          label="审核状态"
          width="105"
          align="center"
          filter-placement="bottom-end"
        >
          <template slot-scope="scope">
            <el-tag
              :type="(scope.row.tag1 === '通过')? 'success':
                (scope.row.tag1 === '退回')? 'warning':
                (scope.row.tag1 === '未审批') ? 'info':
                (scope.row.tag1 === '拒绝') ? 'danger':
                (scope.row.tag1 === '重审') ? 'primary':
                'info'"
              disable-transitions
            >{{ scope.row.tag1 }}
            </el-tag>
          </template>
        </el-table-column>

        //状态栏示例
        <!--
        <el-table-column
          prop="tag"
          label="状态"
          width="100"
          :filters="[{ text: '未读', value: '未读' }, { text: '已读', value: '已读' },{ text: '处理中', value: '处理中' },{ text: '已完成', value: '已完成' }]"
          :filter-method="filterTag"
          filter-placement="bottom-end"
        >
          <template slot-scope="scope">
            <el-tag
              :type="(scope.row.tag === '已读' || scope.row.tag === '已完成') ? 'success' : 'primary'"
              disable-transitions
            >{{ scope.row.tag }}
            </el-tag>
          </template>
        </el-table-column>
        -->
        <el-table-column
          align="center"
          label="操作"
          width="130"
          fixed="right"
        >
          <template slot-scope="scope">
            <el-button type="primary" @click="handleClick(scope.row)">
              {{ (scope.row.tag1 === '未审批' || scope.row.tag1 === '重审') ? '审核' : '查看' }}
            </el-button>
          </template>
        </el-table-column>
      </el-table>
      <pagination
        v-show="total>0"
        :total="total"
        :page.sync="pagination.num"
        :limit.sync="pagination.size"
        @pagination="search"
      />
    </div>
  </div>
</template>

<script>
import Pagination from '@/components/Pagination'
import axios from 'axios'
import pdf from 'vue-pdf'
import { getToken } from '@/utils/auth'

export default {
  name: 'StudentAwards',
  components: { Pagination, pdf },
  filters: {
    sexFilter(status) {
      const map = {
        0: 'success',
        1: 'danger',
        2: 'info'
      }
      return map[status]
    },
    statusFilter(status) {
      const map = {
        0: 'danger',
        1: 'success'
      }
      return map[status]
    }
  },
  data() {
    return {
      detailStudentDialog: {
        detailStudentDialogVisible: false,
        loading: true,
        tableData: '',
        selectSbiNumber: ''
      },
      timeout: null,
      loading: false,
      reviewAwardData: {
        UserUrl: 'https://cube.elemecdn.com/3/7c/3ea6beec64369c2642b92c6726f1epng.png',
        loading: true,
        uiIndex: '',
        acIndex: '',
        acIndices: [],
        currentIndex: '',
        stuNumber: '',
        stuInfo1: '',
        stuInfo2: '',
        stuInfo3: '',
        allAcIndex: [],
        tableData: [],
        formLabelWidth: '120px',
        rejectInfo: [],
        reviseInfo: [],
        imageSrc: 'https://tongji-award.oss-cn-beijing.aliyuncs.com/systemFile/学院楼.jpeg?versionId=CAEQEBiBgID0gb3j3RciIDNjYjNlYTFlMTQ0ZjRjOTlhM2M1YmQ1MGUzN2RmODA4',
        //  /logo.png
        //  @/assets/logo.png
        pdfSrc: '/bbs/attach/ba/0a/ba0ac4ee9b8dfee6/%E9%BB%8E%E6%B9%9B%E9%93%81%E8%B7%AF%E5%8A%A8%E8%BD%A6%E7%BB%84%E4%B8%8E%E8%B4%A7%E7%89%A9%E8%BD%A6%E8%BE%86%E8%BF%90%E8%A1%8C%E4%BA%A4%E4%BC%9A%E5%AE%89%E5%85%A8%E7%9A%84%E7%A0%94%E7%A9%B6.pdf',
        //  /test.pdf
        imageVisible: true,
        pdfVisible: true,
        reviewDialogVisible: false,
        reviewedDialogVisible: false,
        passDialogVisible: false,
        awaitDialogVisible: false,
        reviseDialogVisible: false,
        rejectDialogVisible: false,
        btn1: false,
        btn2: false,
        auditStatePre: '',
        auditStateNext: '',
        form: {
          reason: ''
        }
      },
      list: [],
      total: 1,
      queryParams: {
        sbiState: '',
        sbiIfStuUpdateBasicInfo: '',
        Type: '',
        awardAscept: '',
        awardItem: '',
        awardLevel: '',
        dateTime: ['', ''],
        sbi_number: '',
        sbi_name: '',
        sbi_academy: '',
        sbi_department: '',
        sbi_major: '',
        sbi_class: '',
        sbi_youth_league_branch: '',
        sbi_party_branch: '',
        sbi_teacher: '',
        sbi_class_teacher: '',
        sbi_instructor: '',
        sbi_organizer: '',
        sbi_dean: '',
        sbi_group: ''
      },
      pagination: {
        size: 10,
        num: 1
      },
      reviewType: [],
      scoringAspectType: [],
      scoringItemType: [],
      scoringLevelType: [],
      stuSbiState: [
        {
          value: '已激活'
        },
        {
          value: '未激活'
        }
      ],
      stuSbiIfStuUpdateBasicInfo: [
        {
          value: '已维护个人信息'
        },
        {
          value: '未维护个人信息'
        }
      ],
      tableKey: 0,
      allAcIndex: null
    }
  },
  computed: {
    currentUser() {
      return this.$store.state.account.user
    }
  },
  mounted() {
    // this.fetchType()
    // this.fetchTable()
    this.reset()
  },
  methods: {
    fetchTable(params = {}) {
      // params.this.queryParams
      params.pageNum = this.pagination.num
      params.showPerPage = this.pagination.size
      this.loading = true
      // console.log({...params})
      const queryUri = 'achievement/award/jointSearchAwardInformation'
      this.$get(queryUri, {
        ...params
      }).then((r) => {
        const data = r.data.data
        // console.log(r.data)
        this.list = []
        if (r.data.code === 200 && data.length !== 0) {
          this.total = data[0].total
          this.allAcIndex = data[0].allAIndex
          this.$message({
            message: '查询成功',
            type: 'warning'
          })
          for (let i = 0; i < data.length; i++) {
            this.list.push(
              {
                ifPositive: data[i].isPositive,
                tag1: data[i].auditCondition,
                date: (data[i].date === null) ? 'NULL' : data[i].date.slice(0, 4) + '-' + data[i].date.slice(4, 6) + '-' + data[i].date.slice(6, 8),
                update: '接口没有',
                type: data[i].scoringAspect,
                name: (data[i].name ? data[i].name : 'NULL'),
                message: data[i].scoringAspect + '--' + data[i].scoringItem + '--' + data[i].awardLevel,
                acIndex: data[i].aindex,
                stu_id: data[i].studentNum,
                stu_name: data[i].studentName,
                sbiSex: data[i].studentBasicInfo.sbiSex,
                sbiAcademy: data[i].studentBasicInfo.sbiAcademy,
                sbiDepartment: data[i].studentBasicInfo.sbiDepartment,
                sbiMajor: data[i].studentBasicInfo.sbiMajor,
                sbiClass: data[i].studentBasicInfo.sbiClass,
                sbiYouthLeagueBranch: data[i].studentBasicInfo.sbiYouthLeagueBranch,
                sbiPartyBranch: data[i].studentBasicInfo.sbiPartyBranch,
                sbiTrainingLevel: data[i].studentBasicInfo.sbiTrainingLevel,
                sbiGroup: data[i].studentBasicInfo.sbiGroup,
                sbiTeacher: data[i].studentBasicInfo.sbiTeacher + '(' + data[i].studentBasicInfo.sbiTeacherNumber + ')',
                sbiClassTeacher: data[i].studentBasicInfo.sbiClassTeacher + '(' + data[i].studentBasicInfo.sbiClassTeacherNumber + ')',
                sbiInstructor: data[i].studentBasicInfo.sbiInstructor + '(' + data[i].studentBasicInfo.sbiInstructorNumber + ')',
                sbiOrganizer: data[i].studentBasicInfo.sbiOrganizer + '(' + data[i].studentBasicInfo.sbiOrganizerNumber + ')',
                sbiDean: data[i].studentBasicInfo.sbiDean + '(' + data[i].studentBasicInfo.sbiDeanNumber + ')'
              }
            )
          }
        } else if (r.data.code === 200 && data.length === 0) {
          this.total = 0
          this.allAcIndex = []
          this.$message({
            message: '查询数据为空。',
            type: 'warning'
          })
        } else {
          this.$message({
            message: '查询失败，请重置。',
            type: 'warning'
          })
        }
        this.loading = false
      })
    },
    fetchType(params = {}) {
      params.fatherName = '审批状态'
      this.$get('achievement/award/queryContentFromRelation', {
        ...params
      }).then((r) => {
        // console.log(r.data)
        const Type = r.data.data
        this.reviewType = []
        for (let i = 0; i < Type.length; i++) {
          this.reviewType.push(
            {
              value: Type[i].rChildrenName,
              text: Type[i].rChildrenName
            }
          )
        }
        // console.log(this.reviewType)
      })
      this.$get('achievement/award/queryAwardAttr', {
        colName: 'as_scoring_aspect'
      }).then((r) => {
        // console.log(r.data)
        const Type = r.data.data.stateItemsValue
        this.scoringAspectType = []
        for (let i = 0; i < Type.length; i++) {
          this.scoringAspectType.push(
            {
              value: Type[i],
              text: Type[i]
            }
          )
        }
        // console.log(this.scoringAspectType)
      })
      this.$get('achievement/award/queryAwardAttr', {
        colName: 'as_scoring_item'
      }).then((r) => {
        // console.log(r.data)
        const Type = r.data.data.stateItemsValue
        this.scoringItemType = []
        for (let i = 0; i < Type.length; i++) {
          this.scoringItemType.push(
            {
              value: Type[i],
              text: Type[i]
            }
          )
        }
        // console.log(this.scoringItemType)
      })
      this.$get('achievement/award/queryAwardAttr', {
        colName: 'as_award_level'
      }).then((r) => {
        // console.log(r.data)
        const Type = r.data.data.stateItemsValue
        this.scoringLevelType = []
        for (let i = 0; i < Type.length; i++) {
          this.scoringLevelType.push(
            {
              value: Type[i],
              text: Type[i]
            }
          )
        }
        // console.log(this.scoringLevelType)
      })
    },
    search() {
      this.$refs.table.clearSort()
      this.$refs.table.clearFilter()
      this.fetchType()
      this.fetchTable({
        stuId: this.queryParams.sbi_number === '' ? null : this.queryParams.sbi_number,
        stuName: this.queryParams.sbi_name === '' ? null : this.queryParams.sbi_name,
        sbiAcademy: this.queryParams.sbi_academy === '' ? null : this.queryParams.sbi_academy,
        sbiDepartment: this.queryParams.sbi_department === '' ? null : this.queryParams.sbi_department,
        sbiMajor: this.queryParams.sbi_major === '' ? null : this.queryParams.sbi_major,
        sbiClass: this.queryParams.sbi_class === '' ? null : this.queryParams.sbi_class,
        sbiYouthLeagueBranch: this.queryParams.sbi_youth_league_branch === '' ? null : this.queryParams.sbi_youth_league_branch,
        sbiPartyBranch: this.queryParams.sbi_party_branch === '' ? null : this.queryParams.sbi_party_branch,
        sbiState: this.queryParams.sbiState === '已激活' ? true : this.queryParams.sbiState === '未激活' ? false : null,
        sbiTeacher: this.queryParams.sbi_teacher === '' ? null : this.queryParams.sbi_teacher,
        sbiClassTeacher: this.queryParams.sbi_class_teacher === '' ? null : this.queryParams.sbi_class_teacher,
        sbiInstructor: this.queryParams.sbi_instructor === '' ? null : this.queryParams.sbi_instructor,
        sbiOrganizer: this.queryParams.sbi_organizer === '' ? null : this.queryParams.sbi_organizer,
        sbiDean: this.queryParams.sbi_dean === '' ? null : this.queryParams.sbi_dean,
        sbiGroup: this.queryParams.sbi_group === '' ? null : this.queryParams.sbi_group,
        sbiIfStuUpdateBasicInfo: this.queryParams.sbiIfStuUpdateBasicInfo === '已维护个人信息' ? true : this.queryParams.sbiIfStuUpdateBasicInfo === '未维护个人信息' ? false : null,
        date1: this.queryParams.dateTime[0] === '' ? null : this.queryParams.dateTime[0],
        date2: this.queryParams.dateTime[1] === '' ? null : this.queryParams.dateTime[1],
        auditFilter: this.queryParams.Type === '' ? null : this.queryParams.Type,
        type: this.queryParams.awardAscept === '' ? null : this.queryParams.awardAscept,
        level: this.queryParams.awardItem === '' ? null : this.queryParams.awardItem,
        item: this.queryParams.awardLevel === '' ? null : this.queryParams.awardLevel
      })
    },
    reset() {
      this.queryParams = {
        sbiState: '',
        sbiIfStuUpdateBasicInfo: '',
        Type: '',
        awardAscept: '',
        awardItem: '',
        awardLevel: '',
        dateTime: ['', ''],
        sbi_number: '',
        sbi_name: '',
        sbi_academy: '',
        sbi_department: '',
        sbi_major: '',
        sbi_class: '',
        sbi_youth_league_branch: '',
        sbi_party_branch: '',
        sbi_teacher: '',
        sbi_class_teacher: '',
        sbi_instructor: '',
        sbi_organizer: '',
        sbi_dean: '',
        sbi_group: ''
      }
      this.$refs.table.clearSort()
      this.$refs.table.clearFilter()
      this.search()
    },
    querySearchAsync(queryString, cb) {
      const reviewType = this.reviewType
      const results = queryString ? reviewType.filter(this.createStateFilter(queryString)) : reviewType
      clearTimeout(this.timeout)
      this.timeout = setTimeout(() => {
        cb(results)
      }, 300 * Math.random())
    },
    querySearchAsync1(queryString, cb) {
      const reviewType = this.scoringAspectType
      const results = queryString ? reviewType.filter(this.createStateFilter(queryString)) : reviewType
      clearTimeout(this.timeout)
      this.timeout = setTimeout(() => {
        cb(results)
      }, 300 * Math.random())
    },
    querySearchAsync2(queryString, cb) {
      const reviewType = this.scoringItemType
      const results = queryString ? reviewType.filter(this.createStateFilter(queryString)) : reviewType
      clearTimeout(this.timeout)
      this.timeout = setTimeout(() => {
        cb(results)
      }, 300 * Math.random())
    },
    querySearchAsync3(queryString, cb) {
      const reviewType = this.scoringLevelType
      const results = queryString ? reviewType.filter(this.createStateFilter(queryString)) : reviewType
      clearTimeout(this.timeout)
      this.timeout = setTimeout(() => {
        cb(results)
      }, 300 * Math.random())
    },
    querySearchAsync4(queryString, cb) {
      const reviewType = this.stuSbiState
      const results = queryString ? reviewType.filter(this.createStateFilter(queryString)) : reviewType
      clearTimeout(this.timeout)
      this.timeout = setTimeout(() => {
        cb(results)
      }, 300 * Math.random())
    },
    querySearchAsync5(queryString, cb) {
      const reviewType = this.stuSbiIfStuUpdateBasicInfo
      const results = queryString ? reviewType.filter(this.createStateFilter(queryString)) : reviewType
      clearTimeout(this.timeout)
      this.timeout = setTimeout(() => {
        cb(results)
      }, 300 * Math.random())
    },
    createStateFilter(queryString) {
      return (state) => {
        return (state.value.toLowerCase().indexOf(queryString.toLowerCase()) === 0)
      }
    },
    handleSelect(item) {
    },
    handleClick(row) {
      // console.log(row)
      if (row.tag1 === '通过' || row.tag1 === '拒绝' || row.tag1 === '退回') {
        this.reviewAwardData.acIndex = row.acIndex
        this.reviewAwardData.acIndices = this.allAcIndex
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewedDialogVisible = true
      } else {
        this.reviewAwardData.acIndex = row.acIndex
        this.reviewAwardData.acIndices = this.allAcIndex
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewDialogVisible = true
      }
    },
    formatter(row, column) {
      return row.message
    },
    reviewFetchData() {
      this.reviewAwardData.loading = true
      this.reviewAwardData.tableData = []
      // 获取前一个成果的审核状态
      axios({
        method: 'post',
        url: '/api/achievement/award/nextPreDetailAwardInformation',
        headers: { Authorization: 'bearer ' + getToken() },
        data: {
          nextOrPre: 'pre',
          currentAcIndex: this.reviewAwardData.acIndex,
          acIndices: this.reviewAwardData.acIndices
        }
      }).then((r) => {
        const data = r.data.data
        if (data === null) {
          this.reviewAwardData.auditStatePre = null
        } else {
          if (data.astatus01StepResult === null && data.astatus02StepResult === null && data.astatus03StepResult === null) {
            this.reviewAwardData.auditStatePre = '未审批'
          }
          if (data.astatus03StepResult !== null) {
            this.reviewAwardData.auditStatePre = data.astatus03StepResult
          }
          if (data.astatus02StepResult !== null) {
            this.reviewAwardData.auditStatePre = data.astatus02StepResult
          }
          if (data.astatus01StepResult !== null) {
            this.reviewAwardData.auditStatePre = data.astatus01StepResult
          }
        }
      })
      // 获取后一个成果的审核状态
      axios({
        method: 'post',
        url: '/api/achievement/award/nextPreDetailAwardInformation',
        headers: { Authorization: 'bearer ' + getToken() },
        data: {
          nextOrPre: 'next',
          currentAcIndex: this.reviewAwardData.acIndex,
          acIndices: this.reviewAwardData.acIndices
        }
      }).then((r) => {
        const data = r.data.data
        if (data === null) {
          this.reviewAwardData.auditStateNext = null
        } else {
          if (data.astatus01StepResult === null && data.astatus02StepResult === null && data.astatus03StepResult === null) {
            this.reviewAwardData.auditStateNext = '未审批'
          }
          if (data.astatus03StepResult !== null) {
            this.reviewAwardData.auditStateNext = data.astatus03StepResult
          }
          if (data.astatus02StepResult !== null) {
            this.reviewAwardData.auditStateNext = data.astatus02StepResult
          }
          if (data.astatus01StepResult !== null) {
            this.reviewAwardData.auditStateNext = data.astatus01StepResult
          }
        }
      })
      // 获取拒绝信息
      this.$get('achievement/award/getAllRejectInfo', {
        type: '拒绝'
      }).then((r) => {
        const data = r.data.data
        this.reviewAwardData.rejectInfo = []
        for (let i = 0; i < data.length; i++) {
          this.reviewAwardData.rejectInfo.push(
            {
              text: data[i],
              value: data[i]
            }
          )
        }
      })
      // 获取驳回信息
      this.$get('achievement/award/getAllRejectInfo', {
        type: '退回'
      }).then((r) => {
        const data = r.data.data
        this.reviewAwardData.reviseInfo = []
        for (let i = 0; i < data.length; i++) {
          this.reviewAwardData.reviseInfo.push(
            {
              text: data[i],
              value: data[i]
            }
          )
        }
      })
      // 获取当前成果的属性
      axios({
        method: 'post',
        url: '/api/achievement/award/queryAwardInformationByAIndex',
        headers: { Authorization: 'bearer ' + getToken() },
        data: {
          'aindex': this.reviewAwardData.acIndex,
          'aindices': this.reviewAwardData.acIndices
        }
      }).then((r) => {
        const data = r.data.data
        // console.log(data)
        this.reviewAwardData.stuNumber = data.studentBasicInfo.sbiNumber
        this.reviewAwardData.allAcIndex = data.allAIndex
        this.reviewAwardData.stuInfo1 = data.studentBasicInfo.sbiName + ' | ' + data.studentBasicInfo.sbiNumber + ' | ' + data.studentBasicInfo.sbiGroup
        this.reviewAwardData.stuInfo2 = data.studentBasicInfo.sbiAcademy + ' | ' + data.studentBasicInfo.sbiDepartment
        this.reviewAwardData.stuInfo3 = data.studentBasicInfo.sbiMajor + ' | ' + data.studentBasicInfo.sbiClass
        if (data.scoringAspect && data.scoringItem && data.awardLevel) {
          this.reviewAwardData.tableData.push(
            {
              type: '成果类型',
              info: data.scoringAspect + ' -- ' + data.scoringItem + ' -- ' + data.awardLevel
            }
          )
        }
        if (data.astatus03StepResult) {
          this.reviewAwardData.tableData.push(
            {
              type: '三级审核状态',
              info: data.astatus03StepResult
            }
          )
          if (data.astatus03StepComment) {
            this.reviewAwardData.tableData.push(
              {
                type: '三级审核意见',
                info: data.astatus03StepComment
              }
            )
          }
        }
        if (data.astatus02StepResult) {
          this.reviewAwardData.tableData.push(
            {
              type: '二级审核状态',
              info: data.astatus02StepResult
            }
          )
          if (data.astatus02StepComment) {
            this.reviewAwardData.tableData.push(
              {
                type: '二级审核意见',
                info: data.astatus02StepComment
              }
            )
          }
        }
        if (data.astatus01StepResult) {
          this.reviewAwardData.tableData.push(
            {
              type: '一级审核状态',
              info: data.astatus01StepResult
            }
          )
          if (data.astatus01StepComment) {
            this.reviewAwardData.tableData.push(
              {
                type: '三级审核意见',
                info: data.astatus01StepComment
              }
            )
          }
        }
        for (let i = 0; i < data.attributes.length; i++) {
          this.reviewAwardData.tableData.push(
            {
              type: data.attributes[i],
              info: data.values[i]
            }
          )
        }
        this.reviewAwardData.loading = false
      })
    },
    reviewButtonUsable() {
      // console.log(this.reviewAwardData.acIndices)
      // console.log(this.reviewAwardData.acIndex)
      this.reviewAwardData.currentIndex = this.reviewAwardData.acIndices.findIndex((element) => element === this.reviewAwardData.acIndex)
      if (this.reviewAwardData.currentIndex === 0 && this.reviewAwardData.acIndices.length === 1) {
        this.reviewAwardData.btn1 = true
        this.reviewAwardData.btn2 = true
      } else if (this.reviewAwardData.currentIndex === 0) {
        this.reviewAwardData.btn1 = true
        this.reviewAwardData.btn2 = false
      } else if (this.reviewAwardData.currentIndex === this.reviewAwardData.acIndices.length - 1) {
        this.reviewAwardData.btn1 = false
        this.reviewAwardData.btn2 = true
      } else {
        this.reviewAwardData.btn1 = false
        this.reviewAwardData.btn2 = false
      }
    },
    passAward() {
      this.reviewAwardData.passDialogVisible = false
      // this.$get('achievement/award/updateAwardAudit', {
      //  aindex: this.reviewAwardData.acIndex,
      //  auditResult: '同意'
      axios({
        method: 'post',
        url: '/api/achievement/award/updateAwardAudit',
        headers: { Authorization: 'bearer ' + getToken() },
        data: {
          aindex: this.reviewAwardData.acIndex,
          auditResult: '通过'
        }
      }).then((r) => {
        console.log(r)
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        // this.reviewAwardData.acIndices = [this.reviewAwardData.acIndex]
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewedDialogVisible = true
      }
      )
    },
    awaitAward() {
      this.reviewAwardData.awaitDialogVisible = false
      // this.$get('achievement/award/updateAwardAudit', {
      //  aindex: this.reviewAwardData.acIndex,
      //  auditResult: '待定'
      axios({
        method: 'post',
        url: '/api/achievement/award/updateAwardAudit',
        headers: { Authorization: 'bearer ' + getToken() },
        data: {
          aindex: this.reviewAwardData.acIndex,
          auditResult: '重审'
        }
      }).then((r) => {
        console.log(r)
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        // this.reviewAwardData.acIndices = [this.reviewAwardData.acIndex]
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewDialogVisible = true
      })
    },
    reviseAward() {
      this.reviewAwardData.reviseDialogVisible = false
      // this.$get('achievement/award/updateAwardAudit', {
      //  aindex: this.reviewAwardData.acIndex,
      //  auditResult: '驳回',
      //  rejectInfo: this.reviewAwardData.form.reason
      axios({
        method: 'post',
        url: '/api/achievement/award/updateAwardAudit',
        headers: { Authorization: 'bearer ' + getToken() },
        data: {
          aindex: this.reviewAwardData.acIndex,
          auditResult: '退回',
          rejectInfo: this.reviewAwardData.form.reason
        }
      }).then((r) => {
        console.log(r)
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        // this.reviewAwardData.acIndices = [this.reviewAwardData.acIndex]
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewedDialogVisible = true
      })
    },
    rejectAward() {
      this.reviewAwardData.rejectDialogVisible = false
      axios({
        method: 'post',
        url: '/api/achievement/award/updateAwardAudit',
        headers: { Authorization: 'bearer ' + getToken() },
        data: {
          aindex: this.reviewAwardData.acIndex,
          auditResult: '拒绝',
          rejectInfo: this.reviewAwardData.form.reason
        }
      }).then((r) => {
        // this.$get('achievement/award/updateAwardAudit', {
        //  aindex: this.reviewAwardData.acIndex,
        //  auditResult: '拒绝',
        //  rejectInfo: this.reviewAwardData.form.reason
        // }).
        // console.log(r)
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewedDialogVisible = true
      })
    },
    jumpDetail() {
      this.detailStudentDialog.selectSbiNumber = this.reviewAwardData.stuNumber
      this.fetchStudentInfo()

      // this.reviewAwardData.reviewDialogVisible = false
      // this.reviewAwardData.reviewedDialogVisible = false
      // this.$router.push({path: '/student/all-info', query: {sbiNumber: this.reviewAwardData.stuNumber}})
    },
    jumpPre() {
      if (this.reviewAwardData.auditStateNext === '未审批' || this.reviewAwardData.auditStateNext === '重审') {
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        this.reviewAwardData.acIndex = this.reviewAwardData.acIndices[this.reviewAwardData.currentIndex - 1]
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewDialogVisible = true
        // window.location.reload(true)
      } else {
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        this.reviewAwardData.acIndex = this.reviewAwardData.acIndices[this.reviewAwardData.currentIndex - 1]
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewedDialogVisible = true
      }
    },
    jumpNext() {
      if (this.reviewAwardData.auditStateNext === '未审批' || this.reviewAwardData.auditStateNext === '重审') {
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        this.reviewAwardData.acIndex = this.reviewAwardData.acIndices[this.reviewAwardData.currentIndex + 1]
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewDialogVisible = true
        // window.location.reload(true)
      } else {
        this.reviewAwardData.reviewDialogVisible = false
        this.reviewAwardData.reviewedDialogVisible = false
        this.reviewAwardData.acIndex = this.reviewAwardData.acIndices[this.reviewAwardData.currentIndex + 1]
        this.reviewFetchData()
        this.reviewButtonUsable()
        this.reviewAwardData.reviewedDialogVisible = true
      }
    },
    returnReview() {
      this.reviewAwardData.reviewDialogVisible = false
      this.reviewAwardData.reviewedDialogVisible = false
    },
    fetchStudentInfo() {
      this.detailStudentDialog.tableData = []
      this.detailStudentDialog.loading = true
      this.$get('achievement/sbi/fetchSbiByNumber', {
        sbiNumber: this.detailStudentDialog.selectSbiNumber
      }).then((r) => {
        const data = r.data.data
        this.detailStudentDialog.tableData.push(
          {
            type: '姓名',
            info: this.judgeNull(data.sbiName)
          },
          {
            type: '学号',
            info: this.judgeNull(data.sbiNumber)
          },
          {
            type: '性别',
            info: this.judgeNull(data.sbiSex)
          },
          {
            type: '学院',
            info: this.judgeNull(data.sbiAcademy)
          },
          {
            type: '系',
            info: this.judgeNull(data.sbiDepartment)
          },
          {
            type: '专业',
            info: this.judgeNull(data.sbiMajor)
          },
          {
            type: '出生日期',
            info: this.judgeNull(data.sbiBirthdate)
          },
          {
            type: '民族',
            info: this.judgeNull(data.sbiNation)
          },
          {
            type: '前置学历',
            info: this.judgeNull(data.sbiFormerEducation)
          },
          {
            type: '入学方式',
            info: this.judgeNull(data.sbiEntranceWay)
          },
          {
            type: '入学时间',
            info: this.judgeNull(data.sbiEntranceYear) + '-' + this.judgeNull(data.sbiEntranceMonth)
          },
          {
            type: '预计毕业时间',
            info: this.judgeNull(data.sbiPredictGraduateYear) + '-' + this.judgeNull(data.sbiPredictGraduateMonth)
          },
          {
            type: '学制',
            info: this.judgeNull(data.sbiEducationSystem)
          },
          {
            type: '培养层次',
            info: this.judgeNull(data.sbiTrainingLevel)
          },
          {
            type: '学籍类型',
            info: this.judgeNull(data.sbiStatusType)
          },
          {
            type: '身份证件类型',
            info: this.judgeNull(data.sbiIDType)
          },
          {
            type: '身份证件号',
            info: this.judgeNull(data.sbiIDNumber)
          },
          {
            type: '生源地国家',
            info: this.judgeNull(data.sbiSourceOfSchoolEnrollmentCountry)
          },
          {
            type: '生源地省',
            info: this.judgeNull(data.sbiSourceOfSchoolEnrollmentProvince)
          },
          {
            type: '生源地市',
            info: this.judgeNull(data.sbiSourceOfSchoolEnrollmentCity)
          },
          {
            type: '政治面貌',
            info: this.judgeNull(data.sbiPolicyOutlook)
          },
          {
            type: '户口所在地',
            info: this.judgeNull(data.sbiRegisteredResidencePlace)
          },
          {
            type: '入学前户口性质',
            info: this.judgeNull(data.sbiFormerRegisteredResidenceProperty)
          },
          {
            type: '手机号',
            info: this.judgeNull(data.sbiCellNumber)
          },
          {
            type: '电子信箱',
            info: this.judgeNull(data.sbiEmail)
          },
          {
            type: 'QQ号',
            info: this.judgeNull(data.sbiQq)
          },
          {
            type: '微信号',
            info: this.judgeNull(data.sbiWechat)
          },
          {
            type: '校外（家庭）居住国家',
            info: this.judgeNull(data.sbiLivingCountry)
          },
          {
            type: '校外（家庭）居住省',
            info: this.judgeNull(data.sbiLivingProvince)
          },
          {
            type: '校外（家庭）居住市',
            info: this.judgeNull(data.sbiLivingCity)
          },
          {
            type: '校外（家庭）居住区',
            info: this.judgeNull(data.sbiLivingDistrict)
          },
          {
            type: '校外（家庭）居住详细地址',
            info: this.judgeNull(data.sbiLivingDetailedAddress)
          },
          {
            type: '家属姓名',
            info: this.judgeNull(data.sbiRelativeName)
          },
          {
            type: '家属联系方式',
            info: this.judgeNull(data.sbiRelativeContract)
          },
          {
            type: '班级',
            info: this.judgeNull(data.sbiClass)
          },
          {
            type: '团支部',
            info: this.judgeNull(data.sbiYouthLeagueBranch)
          },
          {
            type: '党支部',
            info: this.judgeNull(data.sbiPartyBranch)
          },
          {
            type: '导师',
            info: this.judgeNull(data.sbiTeacher)
          },
          {
            type: '导师工号',
            info: this.judgeNull(data.sbiTeacherNumber)
          },
          {
            type: '班主任',
            info: this.judgeNull(data.sbiClassTeacher)
          },
          {
            type: '班主任工号',
            info: this.judgeNull(data.sbiClassTeacherNumber)
          },
          {
            type: '辅导员',
            info: this.judgeNull(data.sbiInstructor)
          },
          {
            type: '辅导员工号',
            info: this.judgeNull(data.sbiInstructorNumber)
          },
          {
            type: '组织员',
            info: this.judgeNull(data.sbiOrganizer)
          },
          {
            type: '组织员工号',
            info: this.judgeNull(data.sbiOrganizerNumber)
          },
          {
            type: '教务员',
            info: this.judgeNull(data.sbiDean)
          },
          {
            type: '教务员工号',
            info: this.judgeNull(data.sbiDeanNumber)
          },
          {
            type: '住校',
            info: this.judgeNull(data.sbiLivingAtSchool)
          },
          {
            type: '宿舍校区',
            info: this.judgeNull(data.sbiDormitoryCampus)
          },
          {
            type: '宿舍楼栋',
            info: this.judgeNull(data.sbiDormitoryBuilding)
          },
          {
            type: '宿舍房间号',
            info: this.judgeNull(data.sbiDormitoryRoom)
          }
        )
        this.detailStudentDialog.loading = false
        this.detailStudentDialog.detailStudentDialogVisible = true
        // console.log(data);
      })
    },
    judgeNull(obj) {
      if (obj === null) {
        return 'NULL'
      } else {
        return obj
      }
    }
  }
}
</script>

<style lang="scss" scoped>
@import "DialogType.scss";
</style>
